A REPORT ON Analysis of Reference Counting Algorithms for RCU based Lock-free Data Structures in Linux Kernel

نویسنده

  • Saurabh Deshpande
چکیده

IBM for giving me the opportunity of doing my Practice School-II project at IBM. I would also like to thank Prof. I am indebted my mentor, Mr. Srivatsa Vaddagiri for his constant help, technical guidance and inspiration throughout the work. I express my sincere gratitude to Mr. their help during the course of work. Finally, I would also like to thank the entire LTC team for their support and guidance. I am also grateful to Ms. Rita Gopalan, PS-II faculty for her constant guidance and invaluable suggestions. Abstract : With the advent of shared-memory parallel (SMP) systems, an additional level of complexity was added to locking primitives. Read-copy update(RCU) [1, 2] like many other synchronization primitives was hence developed as a reader-writer synchronization mechanism where readers can incur zero synchronization overhead. RCU [4] provides improved performance in the case of read-mostly data structures. RCU is implemented in the linux kernel(eg. dcache, route cache) in different forms. However, most of them use reference counting [6] for keeping track of the references to (iv) the shared data structure. Some of these RCU algorithms and the different atomic synchronization operations that they use are analyzed during the course of this work. The lookup performance of these algorithms is measured under different scenarios and is compared with respect to each other.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Using Read-Copy-Update Techniques for System V IPC in the Linux 2.5 Kernel

Read-copy update (RCU) allows lock-free read-only access to data structures that are concurrently modified on SMP systems. Despite the concurrent modifications, read-only access requires neither locks nor atomic instructions, and can often be written as if the data were unchanging, in a “CS 101” style. RCU is typically applied to read-mostly linked structures that the read-side code traverses u...

متن کامل

Correction of a Memory Management Method for Lock-Free Data Structures

Memory reuse in link-based lock-free data structures requires special care. Many lock-free algorithms require deleted nodes not to be reused until no active pointers point to them. Also, most lock-free algorithms use the compare and swap atomic primitive, which can suffer from the “ABA problem” [1] associated with memory reuse. Valois [3] proposed a memory management method for link-based data ...

متن کامل

Resizable, Scalable, Concurrent Hash Tables via Relativistic Programming

We present algorithms for shrinking and expanding a hash table while allowing concurrent, wait-free, linearly scalable lookups. These resize algorithms allow ReadCopy Update (RCU) hash tables to maintain constanttime performance as the number of entries grows, and reclaim memory as the number of entries decreases, without delaying or disrupting readers. We call the resulting data structure a re...

متن کامل

Exploiting Deferred Destruction: An Analysis of Read-Copy-Update Techniques in Operating System Kernels

The performance of synchronization instructions on shared memory multiprocessors (SMMP) has declined dramatically compared to the performance of simple instructions. As a result, operating system developers for SMMPs have sought out synchronization algorithms that avoid using these instructions, especially in commonly executed paths. One such algorithm that has been applied successfully in stat...

متن کامل

Scalable Address Spaces Using Rcu Balanced Trees Citation

Software developers commonly exploit multicore processors by building multithreaded software in which all threads of an application share a single address space. This shared address space has a cost: kernel virtual memory operations such as handling soft page faults, growing the address space, mapping files, etc. can limit the scalability of these applications. In widely-used operating systems,...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2005